
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>

<HEAD>
   <TITLE>errdev_c</TITLE>
</HEAD>

<BODY style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">
<A name="TOP"></A>

<table style="text-align: left; margin-left: auto; margin-right: auto; width: 800px;"
 border="0" cellpadding="5" cellspacing="2">
  <tbody>
    <tr>
      <td style="background-color: rgb(153, 153, 153); vertical-align: middle; text-align: center;">
      <div align="right"> 
      <small><small><a href="index.html">Index Page</a></small></small>
      </div>
      <b>errdev_c</b> </td>
    </tr>

    <tr>
      <td style="vertical-align: top;">

<small><div align="center">
<A HREF="index.html#A">A</A>&nbsp;
<A HREF="index.html#B">B</A>&nbsp;
<A HREF="index.html#C">C</A>&nbsp;
<A HREF="index.html#D">D</A>&nbsp;
<A HREF="index.html#E">E</A>&nbsp;
<A HREF="index.html#F">F</A>&nbsp;
<A HREF="index.html#G">G</A>&nbsp;
<A HREF="index.html#H">H</A>&nbsp;
<A HREF="index.html#I">I</A>&nbsp;
<A HREF="index.html#J">J</A>&nbsp;
<A HREF="index.html#K">K</A>&nbsp;
<A HREF="index.html#L">L</A>&nbsp;
<A HREF="index.html#M">M</A>&nbsp;
<A HREF="index.html#N">N</A>&nbsp;
<A HREF="index.html#O">O</A>&nbsp;
<A HREF="index.html#P">P</A>&nbsp;
<A HREF="index.html#Q">Q</A>&nbsp;
<A HREF="index.html#R">R</A>&nbsp;
<A HREF="index.html#S">S</A>&nbsp;
<A HREF="index.html#T">T</A>&nbsp;
<A HREF="index.html#U">U</A>&nbsp;
<A HREF="index.html#V">V</A>&nbsp;
<A HREF="index.html#W">W</A>&nbsp;
<A HREF="index.html#X">X</A>&nbsp;
</div></small>
       <br>
       <table style="text-align: left; width: 60%; margin-left: auto; margin-right: auto;"
       border="0" cellspacing="2" cellpadding="2">
        <tbody>
          <tr>
            <td style="width: 50%; text-align: center;">
            <small>
              <a href="#Procedure">Procedure<br></a>
              <a href="#Abstract">Abstract<br></a>
              <a href="#Required_Reading">Required_Reading<br></a>
              <a href="#Keywords">Keywords<br></a>
              <a href="#Brief_I/O">Brief_I/O<br></a>
              <a href="#Detailed_Input">Detailed_Input<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Detailed_Output">Detailed_Output<br></a>
              <a href="#Parameters">Parameters<br></a>
              <a href="#Exceptions">Exceptions<br></a>
              <a href="#Files">Files<br></a>
              <a href="#Particulars">Particulars<br></a>
              <a href="#Examples">Examples<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Restrictions">Restrictions<br></a>
              <a href="#Literature_References">Literature_References<br></a>
              <a href="#Author_and_Institution">Author_and_Institution<br></a>
              <a href="#Version">Version<br></a>
              <a href="#Index_Entries">Index_Entries<br></a>
             </small>
            </td>
          </tr>
        </tbody>
</table>

<h4><a name="Procedure">Procedure</a></h4>
<PRE>
   void errdev_c ( ConstSpiceChar * op,
                   SpiceInt         lenout,
                   SpiceChar      * device )

</PRE>
<h4><a name="Abstract">Abstract</a></h4>
<PRE>
   Retrieve or set the name of the current output
   device for error messages.
</PRE>
<h4><a name="Required_Reading">Required_Reading</a></h4>
<PRE>
   <a href="../req/error.html">ERROR</a>
</PRE>
<h4><a name="Keywords">Keywords</a></h4>
<PRE>
   ERROR


</PRE>
<h4><a name="Brief_I/O">Brief_I/O</a></h4>
<PRE>
   VARIABLE  I/O  DESCRIPTION
   --------  ---  --------------------------------------------------
   op         I   The operation:  &quot;GET&quot; or &quot;SET&quot;.
   lenout     I   Length of device for output.
   device    I/O  The device name.
</PRE>
<h4><a name="Detailed_Input">Detailed_Input</a></h4>
<PRE>
   op      indicates the operation to be performed.  Possible
           values are &quot;GET&quot; and &quot;SET&quot;.  &quot;GET&quot; means, &quot;set
           device equal to the name of the current error
           output device&quot;  &quot;SET&quot; means, &quot;set the name of the
           current error output device equal to the value of
           device.&quot;

   lenout  the string size of output 'device' when op equals &quot;GET.&quot;
           The size described by lenout should be large enough to 
           hold all characters of any possible output string 
           plus 1 (to accommodate the C null terminator).

   device  is an input when op has the value, &quot;SET&quot;.  It
           indicates an output device to which error messages
           are to be sent.  Possible values for device are:

            1.    A file name.  Note that the name must not
                  use one of the reserved strings below.

            2.    &quot;SCREEN&quot;    The output will go to the
                   screen.  This is the default device.

            3.    &quot;NULL&quot;      The data will not be output.

            &quot;SCREEN&quot; and &quot;NULL&quot; can be written in mixed
            case.  For example, the following call will work:

            <b>errdev_c</b> ( &quot;SET&quot;, lenout, &quot;screEn&quot; );
</PRE>
<h4><a name="Detailed_Output">Detailed_Output</a></h4>
<PRE>
   device  is an output returning the current error output device
           when 'op' equals &quot;GET.&quot;  See &quot;Detailed Input&quot; 
           descriptions of these values.
</PRE>
<h4><a name="Parameters">Parameters</a></h4>
<PRE>
   None.
</PRE>
<h4><a name="Exceptions">Exceptions</a></h4>
<PRE>
   1) If the input argument op does not indicate a valid operation,
      the error SPICE(INVALIDOPERATION) will be signaled.

   2) When op is &quot;SET&quot;, if the input argument device has length greater
      than FILEN characters, the error SPICE(DEVICENAMETOOLONG) will
      be signaled.

   3) The error SPICE(EMPTYSTRING) is signaled if either input string
      does not contain at least one character, since an input string
      cannot be converted to a Fortran-style string in this case.  This
      check always applies to op; it applies to device only when
      device is an input, that is, when op is &quot;SET.&quot;

   4) The error SPICE(NULLPOINTER) is signaled if either string pointer
      argument is null.

   5) The caller must pass a value indicating the length of the output
      string, when device is an output.  If this value is not at least
      2, the error SPICE(STRINGTOOSHORT) is signaled.
</PRE>
<h4><a name="Files">Files</a></h4>
<PRE>
   None.
</PRE>
<h4><a name="Particulars">Particulars</a></h4>
<PRE>
   This routine supports spooling of error messages to log files.
</PRE>
<h4><a name="Examples">Examples</a></h4>
<PRE>
   1.  In this example, we select as the output device
       the file, SPUD.DAT.

          /.
          Set the error output device to the file SPUD.DAT:
          ./
          <b>errdev_c</b> ( &quot;SET&quot;, lenout, &quot;SPUD.DAT&quot; );
</PRE>
<h4><a name="Restrictions">Restrictions</a></h4>
<PRE>
   This routine has no capability of determining the validity
   of the name of an output device.  Care must be taken
   to ensure that the file named is the correct one.

   The device name is assumed to be no longer than FILEN characters.
</PRE>
<h4><a name="Literature_References">Literature_References</a></h4>
<PRE>
   None.
</PRE>
<h4><a name="Author_and_Institution">Author_and_Institution</a></h4>
<PRE>
   N.J. Bachman    (JPL)
   H.A. Neilan     (JPL)
   E.D. Wright     (JPL)
</PRE>
<h4><a name="Version">Version</a></h4>
<PRE>
   -CSPICE Version 1.3.1, 25-SEP-2003 (EDW)

      Corrected confusing description of 'lenout' argument.

   -CSPICE Version 1.3.0, 24-JUN-2003 (NJB)

      Bug fix:  case of invalid operation keyword is now 
      diagnosed, as per the Exceptions section of the header.

   -CSPICE Version 1.2.0, 28-AUG-1999 (NJB)

      Bug fix:  changed errprt_ call to call to errdev_.

   -CSPICE Version 1.2.0, 09-FEB-1998 (NJB)

      Re-implemented routine without dynamically allocated, temporary
      strings.  Made various header fixes.

   -CSPICE Version 1.0.1, 30-OCT-1997 (EDW)

      Corrected errors in examples in which the call sequence
      was incorrect.

   -CSPICE Version 1.0.0, 25-OCT-1997 (EDW)
</PRE>
<h4><a name="Index_Entries">Index_Entries</a></h4>
<PRE>
   get/set error output device name
</PRE>
<h4>Link to routine errdev_c source file <a href='../../../src/cspice/errdev_c.c'>errdev_c.c</a> </h4>

      </td>
    </tr>
  </tbody>
</table>

   <pre>Wed Jun  9 13:05:23 2010</pre>

</body>
</html>

